package com.ruoyi.psi.purchase.apply.domain;



import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.psi.purchase.order.domain.PurchaseOrder;
import com.ruoyi.psi.purchase.order.domain.PurchaseOrderList;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotNull;
import java.sql.Timestamp;

/**
 * 采购申请详细表
 * psi_purchase_apply_list
 * @author Drj 2021/6/28
 * 修改：lsy 2021.7.17
 */
public class PurchaseApplyList extends BaseEntity {
    /**
     * 采购申请单编号
     */
    @NotNull(message = "采购申请单编号不能为空")
    @ApiModelProperty(value = "采购申请单编号", required = true)
    @Excel(name = "采购申请单编号")
    private String purchaseApplyId;
    /**
     * 申请时间
     */
    @ApiModelProperty("申请时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "申请时间")
    private Timestamp applyTime;
    /**
     * 产品编号
     */
    @NotNull(message = "产品编号不能为空")
    @ApiModelProperty(value = "产品编号", required = true)
    @Excel(name = "产品编号")
    private String produceId;
    /**
     * 类别编号
     */
    @ApiModelProperty("类别编号")
    @Excel(name = "类别编号")
    private String baseCategoryId;
    /**
     * 类别名称
     */
    @ApiModelProperty("类别名称")
    @Excel(name = "类别名称")
    private String baseCategoryName;
    /**
     * 产品名称
     */
    @ApiModelProperty("产品名称")
    @Excel(name = "产品名称")
    private String produceName;
    /**
     * 计量单位编号
     */
    @ApiModelProperty("计量单位编号")
    @Excel(name = "计量单位编号")
    private String baseUnitId;
    /**
     * 计量单位名称
     */
    @ApiModelProperty("计量单位名称")
    @Excel(name = "计量单位名称")
    private String baseUnit;
    /**
     * 产品规格
     */
    @ApiModelProperty("产品规格")
    @Excel(name = "产品规格")
    private String produceSpecs;
    /**
     * 产品数量
     */
    @ApiModelProperty("产品数量")
    @Excel(name = "产品数量")
    private double purchaseApplyNumber;
    /**
     * 采购单价
     */
    @Excel(name = "采购单价")
    private Double producePurchasePrice;
    /**
     * 审核人编号
     */
    @ApiModelProperty("审核人编号")
    @Excel(name = "审核人编号")
    private String staffId;
    /**
     * 审核人名称
     */
    @ApiModelProperty("审核人名称")
    @Excel(name = "审核人名称")
    private String staffName;
    /**
     * 审核时间
     */
    @ApiModelProperty("审核时间")
    @Excel(name = "审核时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Timestamp reviewTime;
    /**
     * 采购申请情况
     */
    @ApiModelProperty("采购申请情况")
    @Excel(name = "采购申请情况")
    private String purchaseApplyStatus;
    /**
     * 备注
     */
    @ApiModelProperty("备注")
    @Excel(name = "备注")
    private String remark;

    public PurchaseApplyList() {
    }

    public PurchaseApplyList(PurchaseOrderList purchaseOrderList) {
        this.purchaseApplyId = purchaseOrderList.getPurchaseApplyId();
        this.produceId = purchaseOrderList.getProduceId();
    }

    public String getPurchaseApplyId() {
        return purchaseApplyId;
    }

    public void setPurchaseApplyId(String purchaseApplyId) {
        this.purchaseApplyId = purchaseApplyId;
    }

    public Timestamp getApplyTime() {
        return applyTime;
    }

    public void setApplyTime(Timestamp applyTime) {
        this.applyTime = applyTime;
    }

    public String getProduceId() {
        return produceId;
    }

    public void setProduceId(String produceId) {
        this.produceId = produceId;
    }

    public String getBaseCategoryId() {
        return baseCategoryId;
    }

    public void setBaseCategoryId(String baseCategoryId) {
        this.baseCategoryId = baseCategoryId;
    }

    public String getBaseCategoryName() {
        return baseCategoryName;
    }

    public void setBaseCategoryName(String baseCategoryName) {
        this.baseCategoryName = baseCategoryName;
    }

    public String getProduceName() {
        return produceName;
    }

    public void setProduceName(String produceName) {
        this.produceName = produceName;
    }

    public String getBaseUnitId() {
        return baseUnitId;
    }

    public void setBaseUnitId(String baseUnitId) {
        this.baseUnitId = baseUnitId;
    }

    public String getBaseUnit() {
        return baseUnit;
    }

    public void setBaseUnit(String baseUnit) {
        this.baseUnit = baseUnit;
    }

    public String getProduceSpecs() {
        return produceSpecs;
    }

    public void setProduceSpecs(String produceSpecs) {
        this.produceSpecs = produceSpecs;
    }

    public double getPurchaseApplyNumber() {
        return purchaseApplyNumber;
    }

    public void setPurchaseApplyNumber(double purchaseApplyNumber) {
        this.purchaseApplyNumber = purchaseApplyNumber;
    }

    public String getStaffId() {
        return staffId;
    }

    public void setStaffId(String staffId) {
        this.staffId = staffId;
    }

    public String getStaffName() {
        return staffName;
    }

    public void setStaffName(String staffName) {
        this.staffName = staffName;
    }

    public Timestamp getReviewTime() {
        return reviewTime;
    }

    public void setReviewTime(Timestamp reviewTime) {
        this.reviewTime = reviewTime;
    }

    public String getPurchaseApplyStatus() {
        return purchaseApplyStatus;
    }

    public void setPurchaseApplyStatus(String purchaseApplyStatus) {
        this.purchaseApplyStatus = purchaseApplyStatus;
    }

    public Double getProducePurchasePrice() {
        return producePurchasePrice;
    }

    public void setProducePurchasePrice(Double producePurchasePrice) {
        this.producePurchasePrice = producePurchasePrice;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    @Override
    public String toString() {
        return "PurchaseApplyList{" +
                "purchaseApplyId='" + purchaseApplyId + '\'' +
                ", applyTime=" + applyTime +
                ", produceId='" + produceId + '\'' +
                ", baseCategoryId='" + baseCategoryId + '\'' +
                ", baseCategoryName='" + baseCategoryName + '\'' +
                ", produceName='" + produceName + '\'' +
                ", baseUnitId='" + baseUnitId + '\'' +
                ", baseUnit='" + baseUnit + '\'' +
                ", produceSpecs='" + produceSpecs + '\'' +
                ", purchaseApplyNumber=" + purchaseApplyNumber +
                ", staffId='" + staffId + '\'' +
                ", staffName='" + staffName + '\'' +
                ", reviewTime=" + reviewTime +
                ", purchaseApplyStatus='" + purchaseApplyStatus + '\'' +
                ", remark='" + remark + '\'' +
                '}';
    }
}
